paned: rtl-flip with the correct rectangle
authorBenjamin Otte <otte@redhat.com>
Sun, 14 Feb 2016 14:52:19 +0000 (15:52 +0100)
committerBenjamin Otte <otte@redhat.com>
Sun, 14 Feb 2016 14:52:35 +0000 (15:52 +0100)
gtk/gtkpaned.c

index 0e21a88b97025a51e1e7d6e40f15f7c56f0ceba7..33d5a07f5f30409512d4ab0849527635db1d624b 100644 (file)
@@ -1290,15 +1290,13 @@ gtk_paned_get_preferred_height_for_width (GtkWidget *widget,
 }
 
 static void
-flip_child (GtkWidget     *widget,
-            GtkAllocation *child_pos)
+flip_child (const GtkAllocation *allocation,
+            GtkAllocation       *child_pos)
 {
-  GtkAllocation allocation;
   gint x, width;
 
-  gtk_widget_get_allocation (widget, &allocation);
-  x = allocation.x;
-  width = allocation.width;
+  x = allocation->x;
+  width = allocation->width;
 
   child_pos->x = 2 * x + width - child_pos->x - child_pos->width;
 }
@@ -1424,9 +1422,9 @@ gtk_paned_allocate (GtkCssGadget        *gadget,
 
           if (gtk_widget_get_direction (GTK_WIDGET (widget)) == GTK_TEXT_DIR_RTL)
             {
-              flip_child (widget, &(window2_allocation));
-              flip_child (widget, &(window1_allocation));
-              flip_child (widget, &(priv->handle_pos));
+              flip_child (allocation, &(window2_allocation));
+              flip_child (allocation, &(window1_allocation));
+              flip_child (allocation, &(priv->handle_pos));
             }
 
           child1_allocation.x = child1_allocation.y = 0;